namespace Outcoder.UI.Xaml.Data
{
	public interface IExpandableListViewUtility
	{
		int GetViewType(object listItemDataContext, int groupIndex, int childPosition);
		int ChildTypeCount { get; }
		int GroupTypeCount { get; }
		bool HasStableIds { get; }

		long GetViewId(object listItemDataContext, int groupIndex, int childPosition);

		long GetGroupId/*<TItem>*/(/*GroupedList<TItem> group, */int groupIndex);
		int GetGroupType(int groupIndex);
	}
}